package com.dc2013.util;

import android.content.Intent;
import android.graphics.Bitmap;

public class CameraUtil {
	
	public Bitmap resizeBitmap(Bitmap bitmap, int maxResoulution){
		int width = bitmap.getWidth();
		int height = bitmap.getHeight();
		int newWidth = width;
		int newHeight = height;
		float rate = 0.0f;
		if (width>height){
			if (maxResoulution < width){
				rate = maxResoulution / (float)width;
				newHeight = (int) (height * rate);
				newWidth = maxResoulution;
			}
			else {
				if (maxResoulution<height){
					rate = maxResoulution / (float)height;
					newWidth = (int)(width * rate);
					newHeight = maxResoulution;
				}
			}
		}
		Intent intent = new Intent(Intent.ACTION_SEND);
		intent.putExtra(Intent.EXTRA_STREAM, bitmap);
		return Bitmap.createScaledBitmap(bitmap, newWidth, newHeight, true);
	}
	//activity 내부에서 사용해야함 
//	public Bitmap getBitmapFromStartCamera(Context context){
//		Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//		((Activity)context).startActivityForResult(intent,1);
//		return null;
//		
//	}
//	
//	@Override
//	protected void onActivityResult(int requestCode, int resultCode, Intent data) {
//
//		if (resultCode != RESULT_OK) {
//			Toast.makeText(this, "카메라 촬영에 실패했습니다.", Toast.LENGTH_SHORT).show();
//			return;
//		}
//
//		// 1개의 Activity에 여러개의 결과가 돌아올때는 requestCode로 구분한다.
//		if (requestCode == 1) {
//			Bitmap bitmap = null;
//			if ( data.getExtras() != null ) {
//				bitmap = (Bitmap) data.getExtras().get("data");
//			} else {
//				// Android 2.3 의 경우
//				try {
//					InputStream is = getContentResolver().openInputStream(data.getData());
//					bitmap = BitmapFactory.decodeStream(is);
//					is.close();
//				} catch (Exception e) {
//					e.printStackTrace();
//				}
//			}
//			if (bitmap != null) {
//				imageView.setImageBitmap(bitmap);
//			}
//		}
//	}
}
